home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Your Choice 1
/
your choice.zip
/
your choice
/
PRGMMING
/
SORTING
/
DOCUMENT.TXT
< prev
next >
Wrap
Text File
|
1994-01-15
|
35KB
|
820 lines
INTRODUCTION 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Congratulations in your interest in the Sorting Tutor! You
have chosen a high quality tutor that will provide you with
the best opportunity to understand the concepts behind
computerized sorting.
This manual is a reference to the Sorting Tutor. The
Sorting Tutor offers a complete learning guide to six common
sorting algorithms. We trust you will find this guide an
informative aid that will allow you to successfully build
sorting algorithms necessary in the construction of various
computer programs.
Who Should Read This Manual
This manual is intended for novice to advanced programmers.
For the novice, Chapter 1 provides basic information for
starting and using the Sorting Tutor. Chapters 3 & 6
introduce the novice programmer to three basic sorting
algorithms.
For the advanced programmer, Chapters 3 through 8 explain
each of the nine sorting algorithms in full detail. The
advanced programmer may simply go to the sorting algorithm
that is of most interest.
For all users, chapters 2 through 8 provide examples for
exchange and insertion sorts.
What You Should Already Know
In order to get the most out of this manual, you should be
familiar with some fundamental programming aspects. You
should know how to code LOOPs, IF-THEN-ELSEs, ARRAYS (one
dimensional), and ASSIGNMENT statements.
You should also be familiar with QuickBASIC's primary
commands since the program examples utilized in the Sorting
Tutor are in QuickBASIC. This does not mean that you have
to know every QuickBASIC command, but you should be
comfortable in relating the commands used in the Sorting
Tutor with the language that you are most familiar with.
How to Use This Manual
This manual is not meant to be read from cover to cover. It
is a reference manual, so use it to look up specific
problems that you want to solve. To get the most out of
this manual, refer to the glossary whenever you are not
entirely clear about any computer terms used.
INTRODUCTION
INTRODUCTION
What This Manual is About
For ease of reference, this manual is organized (except for Getting
Started, chapter 1) according to the options on the main menu screen.
Each sorting algorithm displayed on the main menu can be classified
into the following two types:
Exchange sorts: (BUBBLE, SHAKER, and QUICK sort)
Exchange sorts utilize exchanges as an indirect
method of selection, and speed up towards the
end.
Insertion sorts: (LINEAR INSERTION, BINARY
INSERTION, and SHELL sort) Insertion sorts take
each successive piece of data and place it into
the correct position relative to all previously
considered items.
The manual consists largely of information on six sorting
algorithms; BUBBLE, SHAKER, QUICK, LINEAR INSERTION, BINARY
INSERTION, and SHELL sort. The code that is used for each
sorting algorithm is just one way to code an application; it
is not the only way. The reference section in this manual
provides additional information on these sorting algorithms.
GETTING STARTED 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
The program disk that you have received with this package is
ready to run. You may start this program by simply placing
it into drive A: and enter: SORTING. The introduction screen
is displayed on your screen after you have pressed the enter
key. To continue to the main menu screen, press any key on
the keyboard.
The main menu that appears on the screen after the introduction
can be visualized as the table of contents for your system. It
is a menu containing all major features in the system. The main
menu displays six sorting algorithms that are grouped into two types
(Insertion and Exchange).
Receiving HELP by Pressing F1
Use the Sorting Tutor's Help key (F1) to answer any questions that you
may have. The Help key is context-sensitive, which means the Sorting
Tutor will offer help to current situations. For example, if you are
currently at the main menu and press the F1 key, the system will offer
help that is related to the main menu screen.
Selecting a Menu Option
The Sorting Tutor offers you an an attractive and user friendly menu
environment. You may use the following keys when selecting an option from
any menu screen that the Sorting Tutor displays:
UP ARROW Allows you to highlight the previous item on the menu.
DOWN ARROW Highlights the next item in the menu.
FIRST LETTER When you press the first highlighted menu letter, the
computer will automatically choose this option.
** Please Note: Additional help is available by highlighting the desired
letter option (use the arrow keys) and reading the message located at
the bottom of the screen.
System Requirements
There are certain hardware and software requirements to run the Sorting
Tutor. The following requirements are needed before the Sorting Tutor can
function:
MINIMUM INTERNAL MEMORY: 640K RAM
MINIMUM DISK CONFIGURATION: One diskette drive (5¼" or 3½" Drive)
OPERATING SYSTEM: PC-DOS, Ver. 2.0 or higher
MS-DOS, Ver. 2.0 or higher
COMPUTERS: IBM PC, PC-XT, PC-AT, PS/2, or 100%
compatible
GRAPHICS CARD: Required to display graphs or receive
context sensitive HELP.
GETTING STARTED
Installing The Program to a Hard Drive (optional)
Although this program can run on a floppy disk, this program
can also be installed on a hard drive with .360MEG of
available disk space.
As you will see, installing this program on a hard drive is
very easy. The following steps will install the original
program from drive A to drive C:
1. Place the program disk in drive A.
2. Type:
A:
and then press Enter.
3. Type:
INSTALL
and then press Enter.
Once you have completed these three steps, the computer will
copy all the necessary files on drive A to a sub-directory
in drive C (called SORTING). This should take
approximately 1.5 minutes. After all drive activity has
stopped, you may remove the original diskette and store it
in a safe place.
GENERAL SORTING INFORMATION
This section covers the first option on the main menu screen and explains
the importance of sorting data elements on a computer. If you are unfamiliar
with the concepts behind sorting, please take the time to read this section
on the main menu. You should also use the glossary in the back of this
manual whenever a term is unclear to you.
Since this is a information section, the F1 key will not provide help in
this section.
BUBBLE SORT 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
By selecting this option from the main menu screen, you can choose any option
that is displayed on the submenu screen. A SUB-MENU will illustrate the
options that are available to you. This section describes these options.
The bubble sort is one of the easiest sorting routines to learn.
Background Information
The background information on the bubble sort offers novice programmers a
description of the algorithm and code that is used in this simulation.
The word 'BUBBLE' refers to the way in which a data item works its way up
the list until it is in ascending or descending order. This technique is
the easiest way for novice programmers to learn computerized sorting. In
practice, when data is very close to being sorted, a bubble sorting
routine with a simple flag is an easy solution.
Although the bubble sort is a routine designed to sort any number of
elements in an array, sorting large amounts of data would dramatically
increase sorting time. The bubble sort technique requires approx. ½ * N²
operations (N is the total number of elements in the array).
Graphical Sorting
This process graphically demonstrates the bubble sorting technique. You
will be required to enter the number of elements to sort. This number can
be as large as 3000 or as small as 2, the Sorting Tutor requires more time
to complete a sort of larger numbers.
This process illustrates the characteristics of the bubble sort. The
X-axis (bottom horizontal line) represents the array positions, and the
Y-axis (left vertical line) is the number assigned to that position.
White dots (black in Fig. 3-2) represent unsorted data and red dots
represent sorted data. A red diagonal line will form (ie., array(1) = 1,
array(2) = 2 ... array(n) = n) as the data is sorted.
After you enter the number of data items to sort, the Sorting Tutor will
generate and sort this random set of unique integers (no number will occur
twice). To provide an overview of this sorting process, the demonstration
is completely automatic. You may press the pause key (CTRL-S) to freeze
the current screen display. Press any key when you are ready to resume
this demo. By pressing the ESC key, the Sorting Tutor will return you to
the submenu screen displayed in figure 3-1. Once you have completed the
demo, the Sorting Tutor will also display the time it took to complete the
bubble sorting process.
As you can observe from this process, bubble sorting is a very slow and
time consuming process. The shaker sort algorithm offers an improvement
over the bubble sorting technique (refer to chapter 4).
** Please Note: Due to physical mapping of dots on the screen, the
Sorting Tutor may misrepresent (ie., erase 2 dots instead of one)
numbers greater than 190. You may enter numbers greater than 190, but
keep in mind that all of the dots may not be visible.
BUBBLE SORT
Program Code Sorting
This process will use a QuickBASIC algorithm to demonstrate the bubble
sort. Before the process can start, you must answer these two questions:
QUESTION 1:
Enter the number of seconds to pause between sorting steps:
( 0 will wait for the user to press any key. ): [ ]
ANSWER: Use a number of seconds between each step of the sorting
algorithm. This number can be any number between 0 and
99999. Enter a '0' to control each step. 10 to 20 seconds
is normal for beginners.
QUESTION 2:
Do you want to enter the sample data (2 to 11 items)? (Y\N):
ANSWER: Enter 'Y' for YES and 'N' for NO. If you want to
type in your own words, enter 'Y'. A 'N' response will
instruct the Sorting Tutor to choose 11 words at random from
its data base.
Once you have responded to the two questions above, the Sorting Tutor will
sort the array. If you find that the process is going too fast, you may
press the PAUSE key (or CTRL-S) to freeze the screen display. Press any
key when you are ready to resume the process. If you understand the
bubble sorting concept or simply want to return to the submenu, press the
ESC key to permit the Sorting Tutor to operate at its fastest speed.
** Please Note: Pressing F1 on any line of code in this sorting algorithm
will offer you a description of the program code that is displayed on
the screen.
Return to MAIN MENU
By pressing the 'R' key at the submenu screen (you may also highlight
this option), the Sorting Tutor will display the main menu screen.
SHAKER SORT 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4
By selecting this option from the main menu screen, you can choose any
option that is displayed on the submenu screen. This submenu will illustrate
the options that are available to you. This section describes these options.
Background Information
The background information on the shaker sort offers novice to advanced
programmers a description of the algorithm and code that is used in this
simulation.
Like the BUBBLE sort, the word 'SHAKER' refers to the way in which a data
item works its way up and down the list until it is in ascending or
descending order. This technique is compared to a cocktail SHAKER for its
process of sorting data.
The shaker sort is also designed just like the BUBBLE sort except this
algorithm utilizes a boolean (TRUE\FALSE) flag to indicate whether the
elements being compared are already in order. If they are in their proper
place, then these elements are considered to be sorted. The improvements
to the shaker sort may seem good, but it really makes little difference
when sorting a large number elements (the number of exchanges is identical
to those of the bubble sort).
Graphical Sorting
This process graphically demonstrates the shaker sort technique. You will
be required to enter the number of elements to sort. This number can be
as large as 3000 or as small as 2, but the Sorting Tutor requires more time
to complete a sort of larger numbers.
The graph illustrates the characteristics of the shaker sort. The X-axis
(bottom horizontal line) represents the array positions, and the Y-axis
(left vertical line) is the number assigned to that position. White dots
represent unsorted data and red dots represent sorted data. A red
diagonal line will form (ie., array(1) = 1, array(2) = 2 ... array(n) = n)
as the data is sorted.
After you enter the number of data items to sort, the Sorting Tutor will
generate and sort this random set of unique integers (no number will occur
twice). To provide an overview of this sorting process, the demonstration
is completely automatic. You may press the pause key (CTRL-S) to freeze
the current screen display. Press any key when you are ready to resume
this demo. By pressing the ESC key, the Sorting Tutor will return you to
the submenu screen displayed in figure 4-1. Once you have completed the
demo, the Sorting Tutor will also display the time it took to complete the
shaker sorting process.
As you can observe from comparing the shaker and bubble sorting graphs,
the shaker sort works from both sides of the graph. Although this
algorithm may seem better, the time to sort larger numbers is about the
same.
** Please Note: Due to physical mapping of dots on the screen, the
Sorting Tutor may misrepresent (ie., erase 2 dots instead of one)
numbers greater than 190. You may enter numbers greater than 190, but
keep in mind that all of the dots may not be visible.
SHAKER SORT
Program Code Sorting
( See Program Code Sorting for Bubble Sorting )
Return to MAIN MENU
By pressing the 'R' key at the submenu screen (you may also highlight
this option), the Sorting Tutor will display the main menu screen.
QUICKSORT 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
By selecting this option from the main menu screen, you can choose any
option that is displayed on the submenu screen. The submenu will illustrate
the options that are available to you. This section describes these options.
Background Information
The background information on the quick sort offers you a description of
the algorithm and code that is used in this simulation. The quick sort is
well suited for advanced programmers.
Although it may seem that the quick sort is the fastest algorithm, it is
not always as quick as expected. The goal in the quick sort is to select
a pivot which is well positioned relative to the data. A poor use of the
quick sort would be to sort data that is already completely sorted.
Graphical Sorting
This process graphically demonstrates the quick sort technique. You will
be required to enter the number of elements to sort. This number can be
as large as 3000 or as small as 2, but the Sorting Tutor requires more
time to complete a sort of larger numbers.
The graph displayed in figure 5-2 illustrates the characteristics of the
quick sort. The X-axis (bottom horizontal line) represents the array
positions, and the Y-axis (left vertical line) is the number assigned to
that position. White dots represent unsorted data and red dots represent
sorted data. A red diagonal line will form (ie., array(1) = 1, array(2)
= 2 ... array(n) = n) as the data is sorted.
After you enter the number of data items to sort, the Sorting Tutor will
generate and sort this random set of unique integers (no number will occur
twice). To provide an overview of this sorting process, the demonstration
is completely automatic. You may press the pause key (CTRL-S) to freeze
the current screen display. Press any key when you are ready to resume
this demo. By pressing the ESC key, the Sorting Tutor will return you to
the submenu screen.
Once you have completed the demo, the Sorting Tutor will also display the
time it took to complete the shaker sorting process.
As you can observe from this process, the quick sort is very fast in its
sorting procedure (3000 elements take approx. 29 seconds on a 386 33MHZ
computer). You can also see how quickly the partitions (square blocks)
are formed and sorted from this process.
** Please Note: Due to physical mapping of dots on the screen, the
Sorting Tutor may misrepresent (ie., erase 2 dots instead of one)
numbers greater than 190. You may enter numbers greater than 190,
but keep in mind that all of the dots may not be visible.
Program Code Sorting
This process will use a QuickBASIC algorithm to demonstrate the quick
sort. Before the process can start, you must answer these two questions:
**** SEE PROGRAM SORTING under the bubble sort for more help.
Return to MAIN MENU
By pressing the 'R' key at the submenu screen (you may also highlight this
option), the Sorting Tutor will display the main menu screen.
LINEAR INSERTION SORT 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6
By selecting this option from the main menu screen, you can choose any
option that is displayed on the submenu screen. The submenu will illustrate
the options that are available to you. This section describes these options.
The Linear insertion sort is one of the basic examples of INSERTION SORTS.
Background Information
The background information on the linear insertion sort offers novice and
advanced programmers a description of the algorithm and code that is used
in this simulation.
The linear insertion process is similar to the process of picking up cards
one by one in a bridge game. When you choose a new card, you insert it
into its correct position (RELATIVE TO THE OTHER CARDS IN YOUR HAND).
Graphical Sorting
This process graphically demonstrates the linear insertion sort technique.
You will be required to enter the number of elements to sort. This number
can be as large as 3000 or as small as 2, but the Sorting Tutor requires
more time to complete a sort of larger numbers.
The graph illustrates the characteristics of the linear insertion sort.
The X-axis (bottom horizontal line) represents the array positions, and
the Y-axis (left vertical line) is the number assigned to that position.
White dots (black in Fig. 6-2) represent unsorted data and red dots
represent sorted data. A red diagonal line will form (ie., array(1) = 1,
array(2) = 2 ... array(n) = n) as the data is sorted.
After you enter the number of data items to sort, the Sorting Tutor will
generate and sort this random set of unique integers (no number will occur
twice). To provide an overview of this sorting process, the demonstration
is completely automatic. You may press the pause key (CTRL-S) to freeze
the current screen display. Press any key when you are ready to resume
this demo. By pressing the ESC key, the Sorting Tutor will return you to
the submenu screen. Once you have completed the demo, the Sorting Tutor
will also display the time it took to finish the linear insertion
sorting process.
As you can observe from this process, the linear insertion sort inserts
all unsorted data into a sorted "diagonal like" line. Although this is
the same process that is used in binary insertion sort, linear insertion
sort take a longer amount of time to insert unsorted elements.
** Please Note: Due to physical mapping of dots on the screen, the
Sorting Tutor may misrepresent (ie., erase 2 dots instead of one)
numbers greater than 190. You may enter numbers greater than 190, but
keep in mind that all of the dots may not be visible.
LINEAR INSERTION SORT
Program Code Sorting
This process will use a QuickBASIC algorithm to demonstrate the linear
insertion sort. Before the process can start, you must answer these two
questions (SEE program sorting for BUBBLE SORT).
Return to MAIN MENU
By pressing the 'R' key at the submenu screen (you may also highlight this
option), the Sorting Tutor will display the main menu screen.
BINARY INSERTION SORT 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7
By selecting this option from the main menu screen, you can choose any
option that is displayed on the submenu screen. The submenu illustrates the
options that are available to you. This section describes these options.
Background Information
The background information on the binary insertion sort offers novice and
advanced programmers a description of the algorithm and code that is used
in this simulation.
The binary insertion sort works by dividing sorted elements into equal
halves. The next step is to compare the two halves and determine in which
half the new data element should be placed. This process is repeated
until the new element can be inserted into the array.
Although the above practice may seem to involve many steps, the binary
insertion sort requires an amazingly small number of "guesses" to find
its position. For example, this process could easily guess your name
within 20 tries. If your name is in a phone directory, locate the person
that is in the center of the book (approx.). Now, decide whether this
name is before or after your name. Since you are searching in smaller and
smaller halves, the dividing property of the binary insertion process will
find your name within 20 guesses (unless the directory has more than 219 =
1,048,576 entries).
Graphical Sorting
This process graphically demonstrates the binary insertion sort technique.
You will be required to enter the number of elements to sort. This number
can be as large as 3000 or as small as 2, but the Sorting Tutor will
require more time to complete a sort of larger numbers. The graph
displayed in figure 7-2 illustrates the characteristics of the binary
insertion sort. The X-axis (bottom horizontal line) represents the
array positions, and the Y-axis (left vertical line) is the number
assigned to that position. White dots (black in Fig. 7-2) represent
unsorted data and red dots represent sorted data. A red diagonal line
will form (ie., array(1) = 1, array(2) = 2 ... array(n) = n) as the data
is sorted.
After you enter the number of data items to sort, the Sorting Tutor will
generate and sort this random set of unique integers (no number will occur
twice). To provide an overview of this sorting process, the demonstration
is completely automatic. You may press the pause key (CTRL-S) to freeze
the current screen display. Press any key when you are ready to resume
this demo. By pressing the ESC key, the Sorting Tutor will return you to
the submenu screen. Once you have completed the demo, the Sorting Tutor
will also display the time it took to finish the binary insertion sorting
process.
As you can observe from this process, the binary insertion sort inserts
all unsorted data into a sorted "diagonal like" line. Although this is
the same process that is used in linear insertion sort, the binary
insertion sort can quickly find a position to insert unsorted elements.
** Please Note: Due to physical mapping of dots on the screen, the
Sorting Tutor may misrepresent (ie., erase 2 dots instead of one)
numbers greater than 190. You may enter numbers greater than 190, but
keep in mind that all of the dots may not be visible.
BINARY INSERTION SORT
Program Code Sorting
This process will use a QuickBASIC algorithm to demonstrate the binary
insertion sort. Before the process can start, you must answer two
questions: (SEE PROGRAM CODE SORTING UNDER bubble sort)
Return to MAIN MENU
By pressing the 'R' key at the submenu screen (you may also highlight this
option), the Sorting Tutor will display the main menu screen.
SHELL SORT 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
y selecting this option from the main menu screen, you can choose
any option that is displayed on the submenu screen. The submenu will
illustrate the options that are available to you. This section describes
these options.
Although advanced programmers can study the quick sorting time, the Shell
sort is also well suited for novice programmers.
Background Information
The background information on the Shell sort offers novice programmers
a description of the algorithm and code that is used in this simulation.
The Shell sort (named after Donald L. Shell) is a variation of the
insertion sort. When sorting large arrays, this sorting algorithm is much
faster than the BUBBLE sort. The Shell sort compares items that are a
given number of elements away (usually INT(n/2)) and it will eventually
compare items that are close together. If these items are out of their
proper order, a swap is performed. The Shell sort yields faster results
than would be expected by examining its algorithm.
Graphical Sorting
This process graphically demonstrates the Shell sort technique. You will
be required to enter the number of elements to sort. This number can be
as large as 3000 or as small as 2, but the Sorting Tutor will require more
time to complete a sort of larger numbers.
The graph displayed in figure 8-2 illustrates the characteristics of the
Shell sort. The X-axis (bottom horizontal line) represents the array
positions, and the Y-axis (left vertical line) is the number assigned to
that position. White dots (black in Fig. 8-2) represent unsorted data and
red dots represent sorted data. A red diagonal line will form (ie.,
array(1) = 1, array(2) = 2 ... array(n) = n) as the data is sorted.
After you enter the number of data items to sort, the Sorting Tutor will
generate and sort this random set of unique integers (no number will occur
twice). To provide an overview of this sorting process, the demonstration
is completely automatic. You may press the pause key (CTRL-S) to freeze
the current screen display. Press any key when you are ready to resume
this demo. By pressing the ESC key, the Sorting Tutor will return you to
the submenu screen. Once you have completed the demo, the Sorting Tutor
will also display the time it took to complete the Shell sorting process.
As you can observe from this process, the Shell sort quickly brings data
items closer to the sorted diagonal line. Although this is not as fast as
the recursive quick sort, the memory required to operate the Shell sort is
much lower (recursive algorithms require more memory for each recursive
call).
** Please Note: Due to physical mapping of dots on the screen, the
Sorting Tutor may misrepresent (ie., erase 2 dots instead of one)
numbers greater than 190. You may enter numbers greater than 190,
but keep in mind that all of the dots may not be visible.
SHELL SORT
Program Code Sorting
This process will use a QuickBASIC algorithm to demonstrate the Shell
sort. Before the process can start, you must answer these two
questions: (SEE program sorting for the bubble sort)
Return to MAIN MENU
By pressing the 'R' key at the submenu screen (you may also highlight
this option), the Sorting Tutor will display the main menu screen.
CHANGE COLOR ON\OFF 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9
If you are using a monochrome monitor that does not display colors, you
may use this option to turn the colors off. When you select this option
again, the colors will be enabled.
** Please Note: If you do not have a color adapter card for your
computer, changing the color will NOT enable you to display graphs.
Refer to your operations manual that came with your computer to verify
if your computer can display graphics.
GLOSSARY [A] - [D]
ALGORITHM An algorithm is a sequence of instructions that tell
how to solve a particular problem. An algorithm must be
specified exactly, so there can be no doubt about what to do
next, and it must have a finite number of steps. A computer
program is an algorithm.
ARRAY An array is a collection of data that is referred to by
one name.
ARROW KEYS The cursor keys are located on the right hand side of
the keyboard. They are labeled with both numbers and arrows.
These keys can be used to highlight a menu option. The light on
the Num. Lock key must be off in order to allow these keys to
move the cursor.
BYTE A byte is the amount of memory space needed to store one
character, which is normally 8 bits. A computer with 8-bit bytes
can distinguish 256 different characters.
COMPATIBLE Two computers are said to be compatible if they can
use the same programs.
COMPILER A compiler is a computer program that translates a
high level language into machine language.
COPY To copy information is to transfer the information to
another location, leaving the original information unchanged.
CURSOR The cursor is the symbol on a computer terminal that
shows you where the next character you type will appear on the
screen.
DATA Data is factual information. Data is the plural of the
word datum, which means "a singlefact."
DATA BASE A data base is a collection of data stored on a
computer storage medium, such as a disk, that can be used for
more than one purpose.
DATA BASE MANAGEMENT Data base management is the task of
storing data in a data base and retrieving information from that
data.
DISK DRIVE A disk drive is a device that enables a computer to
read and write data on disks.
DOS DOS (Disk Operating System) has been used by many computer
manufacturers as a name for various operating systems.
GLOSSARY [E] - [Q]
ENTER KEY The enter key on a computer terminal is the key you
press at the end of each line in order to enter the contents of
that line into the computer.
F1 This is a function key which is located on the left side of
the keyboard (or along the top). Function keys are referred to
as F1, F2, F3, ... F12. When an instruction lists a number
preceded by an F, the function keys are used.
FILE A file is a collection of information stored as records.
FLOPPY DISK A floppy disk is a computer storage medium made of
plastic which is covered with a magnetic coating.
HARD COPY A hard copy is a printout on paper of computer
output.
HARD DISK A hard disk is a storage medium using rigid aluminum
disks coated with iron oxide.
HARDWARE The hardware in a computer system consists of all the
physical elements in the computer such as integrated circuits,
wires, and terminals.
INPUT The input to a computer is the data is that are fed into
the computer for it to process.
MACHINE LANGUAGE A machine language contains instructions that
a computer can execute directly.
MAIN MENU The main menu is the table of contents for your
system. It is a menu containing all major features in the
system.
MEG MEG stands for megabyte which refers to a memory size of
1,048,576 bytes.
MS-DOS MS-DOS, the MicroSoft Disk Operating System, is an
operating system for computers that use the 8086 or 8088
microprocessor.
OUTPUT The output of a computer is the information that the
computer generates as a result of its calculations.
QuickBASIC QuickBASIC is one of the easiest computer languages
to learn. B.A.S.I.C. stands for Beginners All-purpose Symbolic
Instructional Code and was originally developed by John Kemeny
and Thomas Kurtz.
GLOSSARY [R] - [S]
RECURSION The use of a program that calls itself while it is
being executed.
RUN Used to describe the execution process of a program. In
general, most programs are executed at the DOS prompt by typing
in the name of the program and pressing the ENTER key.
SCREEN The information displayed on your monitor.
SORT To sort a group of items, such as the elements in an array or
the records of a file, is to arrange them in numerical or alphabetical
order.
REFERENCES
The follow references may offer you additional help on the
sorting process:
Box, Richard and Stephen Lacey, April, 1991. "A Fast, Easy
Sort", BYTE, V16., pp. 315-320.
Knuth, Donald E., The Art of Computer Programming, Vol. 3:
Sorting and Searching, Addison-Wesley, 1973, pp. 73-
180.
Lorin, Harold, Sorting and Sort Systems, Addison-Wesley,
1975, pp. 1-173.
Wirth, Nicklaus, Algorithms + Data Structures = Programs,
Prentice-Hall, 1976, pp. 56-87.